package zzu.websocket.jol;

import cn.hutool.core.date.DateUtil;
import com.fasterxml.jackson.annotation.JsonIgnore;

import java.io.Serializable;
import java.util.UUID;

public class Dept implements Serializable
{
	private static final long serialVersionUID = 1L;
	public static enum Status{
		enable(true, "启用"),
		disable(false, "禁用");

		private Boolean value;
		private String desc;

		private Status(Boolean value, String desc) {
			this.value = value;
			this.desc = desc;
		}

		public Boolean getValue() {
			return value;
		}

		public void setValue(Boolean value) {
			this.value = value;
		}

		public String getDesc() {
			return desc;
		}

		public void setDesc(String desc) {
			this.desc = desc;
		}

	}
	/** 机构id */
	private String id;
	/** 机构编号 */
	private String code;
	/**  */
	private String areaId;
	/** 名称 */
	private String name;
	/** 排序 */
	private Integer order;
	/** 创建时间 */
	private java.util.Date createTime;
	/** 更新时间 */
	private java.util.Date updateTime;
	/** 逻辑删除/是否有效 0：无效   1：有效 */
	private Boolean isValid;
	/** 父节点id */
	private String parentId;
	/** 是否为顶级机构（0：不是 1：是） */
	private Boolean isTop;
	/** 预留字段1 */
	private String reserved1;
	/** 预留字段2 */
	private String reserved2;
	/** 预留字段3 */
	private String reserved3;
	/** 预留字段4 */
	private String reserved4;
	/** 预留字段5 */
	private String reserved5;
	/** 预留字段6 */
	private String reserved6;
	/** 同步标志位(0:未同步  1:已同步) */
	@JsonIgnore
	private Boolean syncFlag;
	/** 创建的服务id */
	private String serviceId;
	/** 部门职责 */
	private String dutyDesc;
	/** 负责人 */
	private String managePersonName;
	/** 联系人 */
	private String linkPersonName;
	/** 联系电话 */
	private String linkPhone;

	/**  */
	private java.lang.String deptManagerId;
	/**  */
	private java.lang.String deptBrief;
	/**  */
	private java.lang.String deptSize;
	/** 层级 */
	private java.lang.String deptLevel;
	/** 索引码 */
	private java.lang.String indexCode;

	/** 机构类型(0表示编制，1表示编成，2表示编组) */
	private java.lang.Integer deptType;


	/** 机构隶属的战区 */
	private java.lang.String warZone;
	/** 文电处理系统通信地址 */
	private java.lang.String militaryType;
	/**根据情况实现填充主键内容的方法。
	 * 如不需要，则直接删除该方法。
	 */

	public String getCreateTimeString() {
		return DateUtil.formatDateTime(createTime);
	}

	public String getUpdateTimeString() {
		return DateUtil.formatDateTime(updateTime);
	}
}